#ifndef VGPROCESS_H
#define VGPROCESS_H

#include "Base.h"
#include "process.h"
#include "Camera.h"

//#include "FontManager.h"
class CFontManager;
class CObject3D;
class CFrustum;


class CVGProcess: public CProcess
{
public:
	CVGProcess():	m_angle				(0),
							m_pObject			(NULL),
							m_pObject2			(NULL),
							m_speed				(2.0f),
							m_CamToggle			(true),
							m_ViewToggle		(true),
							m_obj2Yaw			(0),
							m_pFPS				(NULL),
							m_pTPS				(NULL),
							m_pVigil			(NULL),
							m_testSpherePos		(Vect3f(-2.0f,0.0f,2.0f)),
							m_testSphereRadius	(1.0f),
							m_testSphereOnSight	(false){};

	~CVGProcess();
	void		Init				();
	void		Deinit				();
	void		Update				(float dt,float fps);
	void		RenderScene			();
	void		RenderScene2D		();
	CCamera*	GetCamera			(){return m_pCamera;}
	uint32		RenderDebugInfo		();
	

private:
	float			m_angle;
	
	CObject3D*		m_pObject;
	
	CObject3D*		m_pObject2;
	float			m_obj2Yaw;

	float			m_speed;
	
	bool			m_CamToggle;
	bool			m_ViewToggle;
	
	Vect3f			m_testSpherePos;
	float			m_testSphereRadius;
	bool			m_testSphereOnSight;
	
	CCamera*		m_pFPS;
	CCamera*		m_pTPS;
	CCamera*		m_pVigil;
	
};

#endif